home *** CD-ROM | disk | FTP | other *** search
/ Just Call Me Internet / Just Call Me Internet.iso / com / computer / casio_st / tetris.cas < prev   
Text File  |  1994-03-01  |  3KB  |  65 lines

  1. 1 REM (C) YANN LECHELLE 1990
  2. 2 REM CLEAR 8000
  3. 5000 CLS:CLEAR:DEFCHR$(253)="0E0E0E0E0E":DEFCHR$(254)="E0E0E0E0E0":DEFCHR$(255)="EEEEEEEEEE":DEFCHR$(252)="62949890FE":PRINT " ***** TET";CHR$(252);"IS ***** ";
  4. 5001 DATA 4,2,1,1,2,1,1,2,2,2,0,0,0,0
  5. 5002 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0
  6. 5003 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0
  7. 5004 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0
  8. 5005 DATA 4,2,1,1,1,2,1,3,2,3,0,0,3,1
  9. 5006 DATA 4,3,3,1,3,2,2,2,1,2,0,0,0,2
  10. 5007 DATA 4,2,1,1,2,1,2,2,2,3,0,0,1,3
  11. 5008 DATA 4,3,1,1,1,2,2,1,3,1,0,0,2,0
  12. 5009 DATA 3,1,1,1,1,2,1,3,0,0,0,0,1,1
  13. 5010 DATA 3,3,1,1,2,1,3,1,0,0,0,0,0,0
  14. 5011 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0
  15. 5012 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0
  16. 5013 DATA 5,3,2,1,1,2,2,2,3,2,2,3,0,0
  17. 5014 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0
  18. 5015 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0
  19. 5016 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0
  20. 5017 DATA 4,2,2,1,2,2,2,3,1,3,0,0,1,3
  21. 5018 DATA 4,3,1,1,1,2,2,2,3,2,0,0,2,0
  22. 5019 DATA 4,2,1,1,2,1,1,2,1,3,0,0,3,1
  23. 5020 DATA 4,3,1,1,2,1,3,1,3,2,0,0,0,2
  24. 5021 DATA 4,3,2,1,3,1,1,2,2,2,0,0,1,1
  25. 5022 DATA 4,2,1,1,1,2,2,2,2,3,0,0,0,0
  26. 5023 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0
  27. 5024 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0
  28. 5025 DATA 4,3,1,1,2,1,2,2,3,2,0,0,1,1
  29. 5026 DATA 4,2,2,1,1,2,2,2,1,3,0,0,0,0
  30. 5027 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0
  31. 5028 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0
  32. 5030 RESTORE 5001:DIM PCE(6,3,13),SC(16,30):FOR I=0 TO 6:FOR J=0 TO 3:FOR K=0 TO 13:READ PCE(I,J,K):NEXT K:NEXT J:LOCATE 2,1:PRINT INT(I*100/7)+15;"% Loaded";:NEXT I
  33. 5040 DIM P$(3):CLS:FOR I=0 TO 7:LOCATE 15,I:PRINT CHR$(144+I);:NEXT I:P$(1)=CHR$(253):P$(2)=CHR$(254):P$(3)=CHR$(255):P$(0)=" "
  34. 5045 FOR I=0 TO 16:SC(I,15)=1:NEXT I:FOR I=0 TO 7:LOCATE 14,I:PRINT CHR$(135);:NEXT I
  35. 5050 P=INT(RAN#*7):R=0:X=6:Y=1
  36. 5060 GOSUB 5500:IF OK=1 THEN 5400
  37. 5065 FOR I=1 TO PCE(P,R,0):SC(X+PCE(P,R,I*2),Y+PCE(P,R,I*2+1))=1:NEXT I
  38. 5070 XX=INT((13-X)/2):Z=INT(X/2)*2:LOCATE Y,XX:PRINT P$(-(SC(Z+3,Y+1)=1)-2*(SC(Z+4,Y+1)=1));
  39. 5071 PRINT P$(-(SC(Z+3,Y+2)=1)-2*(SC(Z+4,Y+2)=1));
  40. 5072 PRINT P$(-(SC(Z+3,Y+3)=1)-2*(SC(Z+4,Y+3)=1));
  41. 5073 LOCATE Y,XX+1:PRINT P$(-(SC(Z+1,Y+1)=1)-2*(SC(Z+2,Y+1)=1));
  42. 5074 PRINT P$(-(SC(Z+1,Y+2)=1)-2*(SC(Z+2,Y+2)=1));
  43. 5075 PRINT P$(-(SC(Z+1,Y+3)=1)-2*(SC(Z+2,Y+3)=1));
  44. 5076 FOR I=1 TO PCE(P,R,0):SC(X+PCE(P,R,I*2),Y+PCE(P,R,I*2+1))=0:NEXT I
  45. 5079 K$=INKEY$:XS=X:RR=R:GOSUB 5450
  46. 5080 Y=Y+1:GOSUB 5500:IF OK=1 THEN Y=Y-1:X=XS:R=RR:GOTO 5400 ELSE LOCATE Y-1,XX:PRINT P$(-(SC(Z+3,Y)=1)-2*(SC(Z+4,Y)=1));"   ";:LOCATE Y-1,XX+1:PRINT P$(-(SC(Z+1,Y)=1)-2*(SC(Z+2,Y)=1));"   ";
  47. 5090 GOTO 5065
  48. 5400 IF Y>1 THEN 5420
  49. 5410 CLS:PRINT "GAME OVER":END
  50. 5420 FOR I=1 TO PCE(P,R,0):SC(X+PCE(P,R,I*2),Y+PCE(P,R,I*2+1))=1:NEXT I:GOTO 5050
  51. 5450 IF K$="-" THEN X=X-1:IF X<2 THEN X=2
  52. 5451 IF K$="/" THEN X=X+1:IF X>15 THEN X=15
  53. 5452 IF K$="*" THEN R=PCE(P,R,12)
  54. 5453 IF K$="+" THEN R=PCE(P,R,13)
  55. 5454 IF K$="." THEN GOSUB 5555
  56. 5455 RETURN
  57. 5500 OK=0:FOR I=1 TO PCE(P,R,0):IF SC(X+PCE(P,R,I*2),Y+PCE(P,R,I*2+1))=1 THEN OK=1:RETURN
  58. 5505 NEXT I
  59. 5510 RETURN
  60. 5555 I=XX
  61. 5556 K$=INKEY$:IF K$"-" THEN I=I+1:IF I>6 THEN I=7
  62. 5557 IF K$="/" THEN I=I-1:IF I<1 THEN I=0
  63. 5558 LOCATE 0,I:IF K$<>"E" THEN 5556 ELSE RETURN
  64.  
  65.